// import {Component, OnInit} from '@angular/core';
// import {adSystemApiUrl, AliyunOssOutputUrl} from '../../../config/api';
// import {HttpService} from '../../lib/service/http.service';
// import {MapService} from '../../lib/service/map.service';
// import {AddBase} from '../main';
// import {Router} from '@angular/router';
// import {AdOssUploadService} from 'app/lib/service/ad-oss-upload.service';
// import {AddressService} from '../../lib/service/address.service';
// import {LocalStorageService} from '../../lib/service/local-storage.service';
// declare const qq: any;         // 消除 tsc 编译器报错
//
//
// @Component({
//     selector: 'app-store-setting',
//     templateUrl: './store-setting.component.html',
//     styleUrls: ['./store-setting.component.scss'],
//     providers: [MapService, HttpService, LocalStorageService]
// })
// export class StoreSettingComponent implements OnInit {
//
//     type: string;
//     message: string;
//     isShow = false;
//     img_file: any;
//     img_name: string;
//     img_url: string;
//
//     nowApplet;
//     aliyunOssOutputUrl = AliyunOssOutputUrl;
//     status;
//     addBase = new AddBase;
//     bindTel: number;  // 绑定手机号
//     open_time = 0;  // 营业时间
//     startTime: string; // 开始营业时间
//     endTime: string; // 结束营业时间
//     provinceList = [];
//     cityList = [];
//     regionList = [];
//     provinceCode: any = 0;  // 选中省code
//     cityCode: any = 0;
//     regionCode: any = 0;
//     provinceStr: string;  // 选中省name
//     cityStr: string;
//     regionStr: string;
//     changedImg = false;
//     mch_id: string;
//     pay_key: string;
//
//     mapReady = false;  // 地图是否加载完成
//     giveReady = false;  // 是否赋值完成
//     hasBindPay = false;  // 小程序是否绑定支付系统
//     options: any;
//     loadingShow = true;
//     private map: any;
//
//     constructor(private mapService: MapService,
//                 private router: Router,
//                 private httpService: HttpService,
//                 private addressService: AddressService,
//                 private adOssUploadService: AdOssUploadService,
//                 private localStorageService: LocalStorageService) {
//     }
//
//     ngOnInit() {
//         this.bindTel = this.localStorageService.getUserInfo().mobile;
//         this.giveData();
//         this.delayed();
//     }
//
//     delayed() {
//       setTimeout(
//         () => {
//          this.loadingShow = false;
//         }
//         ,1000)
//     }
//
//     // 赋值
//     giveData() {
//         let data;
//         const nowApplet = this.localStorageService.getNowApplet();
//         const newApplet = JSON.parse(localStorage.getItem('baseInfo'));
//         if (!!nowApplet) {
//             this.status = 1;
//             data = this.localStorageService.getNowApplet();
//             this.nowApplet = data;
//             const url = `${adSystemApiUrl}/v1/member/applets/detail?id=${data.id}`;
//             return this.httpService.httpGetAuth(url).subscribe(
//                 res => {
//                     this.addBase = res.data;
//                     this.img_url = this.aliyunOssOutputUrl + '/' + this.addBase.logo + '?' + Math.random();
//                     if (this.addBase.open_time === '00:00-24:00') {
//                         this.open_time = 0;
//                     } else {
//                         this.open_time = 1;
//                         this.startTime = this.addBase.open_time.substring(0, 5);
//                         this.endTime = this.addBase.open_time.substring(6, 11);
//                     }
//                     if (!!this.addBase.mch_id) {this.hasBindPay = true;}
//                     this.getAddressDetail(this.addBase.address_code);
//                     this.giveReady = true;
//                     if (this.mapReady) {
//                         data = res.data;
//                         const LatLng = new qq.maps.LatLng(data.latitude, data.longitude);
//                         this.map.panTo(LatLng);
//                         // 给目标地点增添标记
//                         new qq.maps.Marker({
//                             position: LatLng,
//                             map: this.map
//                         });
//                     }
//                 }
//             );
//         } else {
//             this.status = 0;
//             data = newApplet;
//             this.img_file = this.getBlobBydataURI(data.img_file, data.img_type);
//             this.img_name = data.logo;
//             this.getProvinceList();
//             this.addBase.userUUID = data.userUUID;
//             this.addBase.userID = data.userID;
//             this.addBase.AppSecret = data.AppSecret;
//             this.addBase.AppID = data.AppID;
//             this.addBase.name = data.name;
//             this.addBase.template_categoryID = data.template_categoryID;
//             this.addBase.templateID = data.templateID;
//             this.addBase.logo = data.logo;
//         }
//     }
//
//     onReady(mapNative: any) {
//         this.mapReady = true;
//         mapNative.setOptions({
//             zoom: 16,
//             center: new qq.maps.LatLng(29.81599, 121.53817)
//         });
//         this.map = mapNative;
//         if (this.giveReady) {
//             const data = this.addBase;
//             const LatLng = new qq.maps.LatLng(data.latitude, data.longitude);
//             this.map.panTo(LatLng);
//             // 给目标地点增添标记
//             new qq.maps.Marker({
//                 position: LatLng,
//                 map: this.map
//             });
//         }
//     }
//
//     mapSearch() {
//         // 根据填入地址信息调用接口，获取lat，lang值，再搜索改变地图位置
//         const address = this.provinceStr + this.cityStr + this.regionStr + this.addBase.address_detail;
//         const url = `${adSystemApiUrl}/v1/common/tencent/map/get_lat_lng?address=${address}`;
//         return this.httpService.httpGetAuth(url).subscribe(
//             res => {
//                 const location = res.data.location;
//                 const LatLng = new qq.maps.LatLng(location.lat, location.lng);
//                 this.map.panTo(LatLng);
//                 // 给目标地点增添标记
//                 new qq.maps.Marker({
//                     position: LatLng,
//                     map: this.map
//                 });
//                 this.map.zoomTo(16);
//                 this.addBase.latitude = location.lat;
//                 this.addBase.longitude = location.lng;
//             }
//         );
//     }
//
//     // 已有小程序中获取省市区列表
//     getAddressDetail(code) {
//         this.addressService.getAddressDetail(code).subscribe(
//             res => {
//                 this.provinceCode = res.data.province.code + res.data.province.name;
//                 this.cityCode = res.data.city.code + res.data.city.name;
//                 this.regionCode = res.data.region.code + res.data.region.name;
//                 this.provinceStr = res.data.province.name;
//                 this.cityStr = res.data.city.name;
//                 this.regionStr = res.data.region.name;
//                 this.getProvinceList();
//                 this.getCityList(res.data.province.code);
//                 this.getRegionList(res.data.city.code);
//             }
//         );
//     }
//
//     // 获取省列表
//     getProvinceList() {
//         this.addressService.getProvinceList().subscribe(
//             res => {
//                 if (res.code === 2000) {
//                     this.provinceList = res.data;
//                 } else {
//                     this.type = 'error';
//                     this.message = res.message;
//                     this.isShow = true;
//                 }
//             }
//         );
//     }
//
//     getCityList(provinceCode) {
//         this.addressService.getCityList(provinceCode).subscribe(
//             res => {
//                 if (res.code === 2000) {
//                     this.cityList = res.data;
//                 } else {
//                     this.type = 'error';
//                     this.message = res.message;
//                     this.isShow = true;
//                 }
//             }
//         );
//     }
//
//     getRegionList(cityCode) {
//         this.addressService.getRegionList(cityCode).subscribe(
//             res => {
//                 if (res.code === 2000) {
//                     this.regionList = res.data;
//                 } else {
//                     this.type = 'error';
//                     this.message = res.message;
//                     this.isShow = true;
//                 }
//             }
//         );
//     }
//
//     // 选择省之后
//     changeProvince() {
//         this.provinceStr = this.provinceCode.substring(6);
//         this.cityCode = 0;
//         this.regionCode = 0;
//         this.regionList = [];
//         this.getCityList(this.provinceCode.substring(0, 6));
//     }
//
//     // 选择市之后
//     changeCity() {
//         this.cityStr = this.cityCode.substring(6);
//         this.regionCode = 0;
//         this.getRegionList(this.cityCode.substring(0, 6));
//     }
//
//     // 选择区之后
//     changeRegion() {
//         this.regionStr = this.regionCode.substring(6);
//     }
//
//     // 保存
//     save(turnPage: boolean) {
//         if (!this.regionCode) {
//             this.type = 'info';
//             this.message = '请选择省市区';
//             this.isShow = true;
//             return;
//         }
//         if (!this.open_time) {
//             this.addBase.open_time = '00:00-24:00';
//         } else {
//             this.addBase.open_time = this.startTime + '-' + this.endTime;
//         }
//         if ((!this.mch_id&&this.pay_key)||(this.mch_id&&!this.pay_key)) {
//             this.type = 'info';
//             this.message = '若需要绑定小程序支付,请正确填写商户号及支付key';
//             this.isShow = true;
//             return;
//         }
//         this.addBase.address_code = this.regionCode.substring(0, 6);
//         this.addBase.address_code_explain = this.provinceStr + ' ' + this.cityStr + ' ' + this.regionStr;
//         const address = this.provinceStr + this.cityStr + this.regionStr + this.addBase.address_detail;
//         // 获取经纬度
//         const url = `${adSystemApiUrl}/v1/common/tencent/map/get_lat_lng?address=${address}`;
//         return this.httpService.httpGetAuth(url)
//             .subscribe(
//                 res => {
//                     const location = res.data.location;
//                     this.addBase.latitude = location.lat + '';
//                     this.addBase.longitude = location.lng + '';
//                     this.submit(turnPage);
//                 }
//             );
//     }
//
//     // 上传图片
//     uploadImg($event: any, imgName: string) {
//         this.changedImg = true;
//         const file = $event.path[0].files[0];
//         const myReader = new FileReader();
//         const self = this;
//         const suffix = file.name.replace(/.+\./, '').toLowerCase();
//         this.img_file = file;
//         this.img_name = imgName + '.' + suffix;
//         this.addBase.logo = this.img_name;
//         myReader.readAsDataURL(file);
//         myReader.onloadend = function (e) {
//             self.img_url = myReader.result;
//         };
//     }
//
//     // base64转file
//     getBlobBydataURI(dataURI, type) {
//         const binary = atob(dataURI.split(',')[1]);
//         const array = [];
//         for (let i = 0; i < binary.length; i++) {
//             array.push(binary.charCodeAt(i));
//         }
//         return new Blob([new Uint8Array(array)], {type: type});
//     }
//
//     // 绑定支付系统
//     bindPay() {
//         const url = `${adSystemApiUrl}/v1/member/applets/bind_pay`,
//             applet_uuid = this.localStorageService.getNowApplet().applet_uuid,
//             data = {applet_uuid: applet_uuid, mch_id: this.mch_id, pay_key: this.pay_key};
//         return this.httpService.httpPostAuth(url, data).map(data => data);
//     }
//
//     submit(turnPage: boolean) {
//         if (!!this.status) {
//             const url = `${adSystemApiUrl}/v1/member/applets/mod_base`;
//             return this.httpService.httpPostAuth(url, this.addBase).subscribe(
//                 res => {
//                     if (res.code === 2000) {
//                         // 绑定
//                         if (!!this.mch_id) {
//                             this.bindPay().subscribe(
//                                 rs => {
//                                     if (rs.code === 2000) {
//                                         this.hasBindPay = true;
//                                         this.addBase.mch_id = this.mch_id;
//                                         this.addBase.pay_key = this.pay_key;
//                                         if (this.changedImg) {
//                                             this.adOssUploadService
//                                                 .getSignature('/v1/member/account/' + this.nowApplet.user_id + '/' + this.nowApplet.id + '?callback=true')
//                                                 .subscribe(
//                                                     res1 => {
//                                                         this.adOssUploadService.fileUpload(this.img_file, res1.data, this.img_name, 'logo').subscribe(
//                                                             res2 => {
//                                                                 if (res2.status === 200) {
//                                                                     this.type = 'success';
//                                                                     this.message = '保存成功';
//                                                                     this.isShow = true;
//                                                                     this.localStorageService.setNowApplet(res.data);
//                                                                     if (!!turnPage) {
//                                                                         this.router.navigate([`/main/store-product/goods-add`]);
//                                                                     }
//                                                                 } else {
//                                                                     this.type = 'error';
//                                                                     this.message = '图片上传失败';
//                                                                     this.isShow = true;
//                                                                 }
//                                                             }
//                                                         );
//                                                     }
//                                                 );
//                                         } else {
//                                             this.type = 'success';
//                                             this.message = '保存成功';
//                                             this.isShow = true;
//                                             this.localStorageService.setNowApplet(res.data);
//                                             if (!!turnPage) {
//                                                 this.router.navigate([`/main/store-product/goods-add`]);
//                                             }
//                                         }
//                                     } else {
//                                         this.type = 'error';
//                                         this.message = rs.message;
//                                         this.isShow = true;
//                                     }
//                                 }
//                             )
//                         } else {
//                             if (this.changedImg) {
//                                 this.adOssUploadService
//                                     .getSignature('/v1/member/account/' + this.nowApplet.user_id + '/' + this.nowApplet.id + '?callback=true')
//                                     .subscribe(
//                                         res1 => {
//                                             this.adOssUploadService.fileUpload(this.img_file, res1.data, this.img_name, 'logo').subscribe(
//                                                 res2 => {
//                                                     if (res2.status === 200) {
//                                                         this.type = 'success';
//                                                         this.message = '保存成功';
//                                                         this.isShow = true;
//                                                         this.localStorageService.setNowApplet(res.data);
//                                                         if (!!turnPage) {
//                                                             this.router.navigate([`/main/store-product/goods-add`]);
//                                                         }
//                                                     } else {
//                                                         this.type = 'error';
//                                                         this.message = '图片上传失败';
//                                                         this.isShow = true;
//                                                     }
//                                                 }
//                                             );
//                                         }
//                                     );
//                             } else {
//                                 this.type = 'success';
//                                 this.message = '保存成功';
//                                 this.isShow = true;
//                                 this.localStorageService.setNowApplet(res.data);
//                                 if (!!turnPage) {
//                                     this.router.navigate([`/main/store-product/goods-add`]);
//                                 }
//                             }
//                         }
//                     } else {
//                         this.type = 'error';
//                         this.message = res.message;
//                         this.isShow = true;
//                     }
//                 }
//             );
//         } else {
//             const url = `${adSystemApiUrl}/v1/member/applets/add_base`;
//             return this.httpService.httpPostAuth(url, this.addBase).subscribe(
//                 res => {
//                     if (res.code === 2000) {
//                         this.type = 'success';
//                         this.message = '保存成功';
//                         this.isShow = true;
//                         this.addBase.applet_uuid = res.data.applet_uuid;
//                         this.localStorageService.setNowApplet(res.data);
//                         this.nowApplet = this.localStorageService.getNowApplet();
//                         this.adOssUploadService.getSignature('/v1/member/account/' + this.nowApplet.user_id + '/' + this.nowApplet.id + '?callback=true').subscribe(
//                             res1 => {
//                                 this.adOssUploadService.fileUpload(this.img_file, res1.data, this.img_name, 'logo').subscribe(
//                                     rs => {
//                                         if (rs.status === 200) {
//                                             if (!!this.mch_id) {
//                                                 this.bindPay().subscribe(
//                                                     res2 => {
//                                                         if (res2.code === 2000) {
//                                                             this.type = 'success';
//                                                             this.message = '保存成功';
//                                                             this.isShow = true;
//                                                             this.status = 1;
//                                                             this.hasBindPay = true;
//                                                             this.img_url = this.aliyunOssOutputUrl + '/' + res1.data.dir + this.img_name;
//                                                             if (!!turnPage) {
//                                                                 this.router.navigate([`/main/store-product/goods-add`]);
//                                                             }
//                                                         } else {
//                                                             this.type = 'error';
//                                                             this.message = res2.message;
//                                                             this.isShow = true;
//                                                         }
//                                                     }
//                                                 )
//                                             } else {
//                                                 this.type = 'success';
//                                                 this.message = '保存成功';
//                                                 this.isShow = true;
//                                                 this.status = 1;
//                                                 this.img_url = this.aliyunOssOutputUrl + '/' + res1.data.dir + this.img_name;
//                                                 if (!!turnPage) {
//                                                     this.router.navigate([`/main/store-product/goods-add`]);
//                                                 }
//                                             }
//
//                                         }
//                                     }
//                                 );
//
//                             }
//                         );
//                     } else {
//                         this.type = 'error';
//                         this.message = res.data.name;
//                         this.isShow = true;
//                     }
//                 }
//             );
//         }
//
//     }
// }
